package com.chima.service;

import java.util.List;

import org.springframework.transaction.annotation.Transactional;

import com.chima.domain.Department;
import com.chima.domain.DepartmentCoffer;
import com.chima.domain.Employees;
import com.chima.domain.HsCheckDepartment;
import com.chima.domain.PageRequestBean;
import com.chima.domain.PageResponseBean;
import com.chima.domain.Performance;
import com.chima.domain.Position;
@Transactional
public interface EmployeeService {
	
  public Employees findEmployeesBypwdAndName(String name, String password);
  public Employees findEmployeesByName(String name);
  public Employees findEmployeesById(int id);
  public PageResponseBean findEmployee(PageRequestBean pageRequestBean);
  public void saveEmployees(Employees employees); 
  public void updateEmployees(Employees employees); 
  public void deleteEmployees(int id); 
  public List<Employees>  findEmployeesByDeparmet(int id);
  public void  addRole(int emp,int role,String datapermision);
  public List<Employees> findALL();
  
  public Employees findEmployeesByNameAndDepart(String name,Department d);
  public List<Employees>  findEmployeesByposition(int position);
  public List<Employees>  findMiddleEmployees(int position,String  datapermission);
  public List<Employees>  findEmpBypositionAndDept(int position,int dept);
  public PageResponseBean findGeneralEmployee(PageRequestBean pageRequestBean);
  
  public void  addEMPRole(int emp,int role);
  public List<Position>  ListallPosition();
  public void updatePosition(int id,double coffer); 
  public  Employees findBypositionAndDept(int position,int dept);
public List<Department> finddepartmentByflag1(int i);

public Double findtotalRewardbydateanddeptname(String searchdate, String name);
public List<HsCheckDepartment> findHsCheckDepartmentBymonthandflag(
		String searchdate1, int i);
public List<HsCheckDepartment> findHsCheckDepartmentBymonth(String searchdate1);
public void updateHsCheckDepartmentByMonth(String searchdate1);
public void deleteEmpMoneyBydeptidAndDate(int deptid, String searchdate1);
public void saveorupdateEmpmoney(Performance performance);
public void addorupdateHsCheckDepartment(HsCheckDepartment hsCheckDepartment);
public int findrates(int deptid, String searchdate1);
public double findtotalkaoping(int searchdepartment, String searchdate);
public Department finddepartmentByid(int searchdepartment);
public DepartmentCoffer findDepartmentCofferbydeptname(String name);
public double findtotalPostCompetent(int searchdepartment, String searchdate);
public List<Employees> findEmployeesmangerByDeparmet(int searchdepartment);
public List<Employees> findListzubydeptid(int deptId);
public void addEMPzu(int empID, String name);
  
}
